package BitwiseOperation;

public class getSum {
    public int getSum(int a, int b) {
        while(b!=0){
            int x=a^b;  //可以得到无进位相加
            int y=(a&b)<<1; //可以得到进位
            a=x;
            b=y;
        }
        //重复的原因是无进位相加再加上进位，可能会导致同一个地方还需要再次进位（没进位完）
        //所以需要再重复操作
        return a;
    }
}
